Machines, systems and methods for automated power management

ABSTRACT

Example control systems for automated power management of a machine are described herein. In some examples, the control system can be used with a motive machine. The features are described with reference to a hybrid powered sweeper-scrubber machine, but is not limited as such. The machine can include a main machine controller (MMC) operably coupled to an engine, and a power module operably coupled to the MMC by a controller area network (CAN) bus. A sub-system, including a sub-system having motors, can be operably coupled to the power module by the CAN bus. To provide automated power control, the power module can monitor a load of the sub-system, and using the monitored load of the sub-system, the power module can communicate sub-system load information to the MMC. The MMC can automatically adjust an engine speed based on the sub-system load information and the selected functional mode of the machine.

TECHNICAL FIELD

This document pertains generally, but not by way of limitation, tocontrolling a machine, such as a motive machine that can be a hybridmachine having both fuel-powered and battery-powered modes. Morespecifically, the disclosure can be applied to an industrial floorcleaning machine, such as a hybrid sweeper-scrubber machine. However,aspects of the disclosure can be applied to machines other than hybridmachines and machines other than industrial floor cleaning machines.

BACKGROUND

Hybrid machines that use both fuel-powered modes (e.g., gas engines) andbattery-powered modes have been introduced to replace machines thatpreviously were solely fuel-powered machines. Control modules can beused to control the function of the machine and to switch between thefuel-powered and electric powered modes. One area where hybrid machineshave been introduced is in floor cleaning machines.

Industrial and commercial floors can be cleaned on a regular basis foraesthetic and sanitary purposes. There are many types of industrial andcommercial floors ranging from hard surfaces, such as concrete,terrazzo, wood, and the like, which can be found in factories, schools,hospitals, and the like, to softer surfaces, such as carpeted floorsfound in restaurants and offices. Different types of floor cleaningequipment, such as scrubbers, sweepers, and extractors, have beendeveloped to properly clean and maintain these different floor surfaces.

A typical scrubber is a walk-behind or drivable, self-propelled, wetprocess machine that applies a liquid cleaning solution from an onboardcleaning solution tank onto the floor through nozzles fixed to a forwardportion of the scrubber. Rotating brushes forming part of the scrubberrearward of the nozzles agitate the solution to loosen dirt and grimeadhering to the floor. The dirt and grime become suspended in thesolution, which is collected by a vacuum squeegee fixed to a rearwardportion of the scrubber and deposited into an onboard recovery tank.

Scrubbers are very effective for cleaning hard surfaces. Unfortunately,debris on the floor can clog the vacuum squeegee, and thus, the floorshould be swept prior to using the scrubber. Thus, sweepers are commonlyused to sweep a floor prior to using a scrubber. A typical sweeper is aself-propelled, walk-behind, or drivable dry process machine which picksdebris off a hard or soft floor surface without the use of liquids. Thetypical sweeper has rotating brushes which sweep debris into a hopper or“catch bin.”

Combination sweeper-scrubber machines have been developed that providethe sweeping and scrubbing functionality in a single unit and areavailable in both fuel powered and battery powered designs. Morerecently, “hybrid” type sweeper-scrubber machines that are capable ofoperating in fuel or battery powered modes have also been developed.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, which are not necessarily drawn to scale, like numeralscan describe similar components in different views. Like numerals havingdifferent letter suffixes can represent different instances of similarcomponents. The drawings illustrate generally, by way of example, butnot by way of limitation, various examples discussed in the presentdocument.

FIG. 1 is a top perspective view of an illustrative hybridsweeper-scrubber machine that can utilize a scrub deck retractionapparatus, in accordance with at least one example.

FIG. 2 is a bottom perspective view of the hybrid sweeper-scrubbermachine of FIG. 1, in accordance with at least one example.

FIG. 3 is an internal perspective of the hybrid sweeper-scrubber machineof FIG. 1, in accordance with at least one example.

FIG. 4 is a flow chart illustrating an illustrative control method thatcan be used with a machine such as, but not limited to, the hybridsweeper-scrubber of FIG. 1, in accordance with at least one example.

FIG. 5 is a functional diagram of an illustrative control system thatcan be used with a machine such as, but not limited to, the hybridsweeper-scrubber of FIG. 1, in accordance with at least one example.

FIG. 6 is a functional diagram of aspects of a control system includingpower modules that can be used with a machine such as, but not limitedto, the hybrid sweeper-scrubber of FIG. 1, in accordance with at leastone example.

FIG. 7 is a functional diagram of an illustrative (controller areanetwork) CAN bus.

FIG. 8 is an illustrative method for controlling a motive machine, inaccordance with at least one example.

FIG. 9 is an illustrative method for controlling an output of a scrubmotor, in accordance with at least one example.

FIG. 10 is a general diagram of a motor and scrub element that can belifted by an actuator, in accordance with at least one example.

FIG. 11 is an illustrative method of using a power module to monitor andcontrol an output of a motor by pulse width modulation, in accordancewith at least one example.

FIG. 12 is an illustrative schematic of a fail-safe feature for a powermodule including a solenoid.

FIG. 13 shows an example schematic of the solenoid 1300 that may be usedin the example power module of FIG. 12.

DETAILED DESCRIPTION

The present disclosure relates generally to machines, such as motivemachines that have a movable or transport aspect. In some examples, themachine can be a hybrid machine that can be operated in a fuel-poweredor battery-powered mode. However, this disclosure includes features thatcan be applied to machines that do not necessarily have a hybrid powersystem (e.g., fuel only or electric only).

In some examples, the machine can include a cleaning apparatus such as asweeper-scrubber machine. For the purposes of illustration, a hybridsweeper-scrubber machine is described herein. Again, the disclosure canbe applied to other types of machines, including other types of vehiclesand machines that do not have a cleaning aspect.

Conventional machines such as motive machines can have challengesincluding how to manage power control and distribution. One challenge isthat in order for a machine to control power across all electricalcomponents in the machine, many individual current sensors need to beprovided for each electrical component, and each electrical componentprovides feedback to the main controller (MMC). This disclosure includesaspects related to engine speed control to compensate for additionalloads being placed on components of the machine and to preventoverloading of various motors of the machine.

Hybrid Sweeper-Scrubber Overview

One illustrative but non-limiting example of the hybrid sweeper-scrubbermachine of the present invention is illustrated in FIGS. 1 and 2. Anillustrative schematic diagram of the hybrid sweeper-scrubber componentsis illustrated in FIG. 3. The sweeper-scrubber of FIGS. 1-3 provides allof the functionality of a prior art sweeper-scrubber system through theuse of electric components, although hydraulics can be used to operatethe hopper for debris collection.

The present control method and system for the hybrid sweeper-scrubbercan include an internal combustion engine and electrical system batterypack to power the hybrid sweeper-scrubber and operate a number ofaccessories and cleaning functions. The present control method andsystem can include common components between the engine and electricalsystems. Benefits of such embodiments can include reduced materialcosts, reduced component maintenance, reduced overall size of the hybridsweeper-scrubber, elimination of a number of hydraulic components, loweremissions, or less fuel consumption.

FIGS. 1 and 2 are top and bottom perspective views, respectively, of anexample of a sweeper-scrubber 30 that can utilize a scrub elementretraction apparatus in accordance with the present patent application.As illustrated in FIGS. 1 and 2, the sweeper-scrubber 30 can include asweeper system 32 for sweeping a floor surface and a scrubber system 34for scrubbing the floor surface. Thus, as will be discussed in furtherdetail below, the sweeper-scrubber 30 can be operable to sweep dirt anddebris from the floor surface, spray a liquid cleaning solution from anonboard cleaning solution tank onto the floor being cleaned, and agitatethe cleaning solution. Suction means can then be used to draw thecleaning solution into an onboard recovery tank.

Providing a floor cleaning system having both a sweeper system 32 and ascrubber system 34 can allow the operator to perform both “dry” and“wet” cleaning with the same system. These sweeping and scrubbing modescan be operated either separately or simultaneously depending upon thetype of cleaning required.

As further illustrated in FIGS. 1 and 2, the sweeper-scrubber 30 caninclude a chassis 36 supporting a machine body 37 and having a forwardend 38 and a rearward end 40 joined by sides 42. The chassis 36 can besupported by one or more floor engaging front wheels 44 and one or morerear steerable wheels 46. The one or more rear steerable wheels 46 canbe operatively connected to a steering wheel 48 through the chassis 36.Alternatively, the chassis can be supported by one or more frontsteerable wheels and one or more floor engaging rear wheels. Thesteering wheel can be part of a steering control system (e.g., 566, FIG.5) as described herein.

A driver seat 50 can be supported by the machine body 37 rearward of thesteering wheel 48 for use by an operator of the sweeper-scrubber 30. Theoperator can sit on the driver seat 50 to operate the steering wheel 48and foot operated control pedals 52, such as a brake and an accelerator,supported above a chassis top surface 54 The accelerator can be includedin a speed control system (e.g., 564, FIG. 5), as described herein.

Cleaning Operation

In operation, a spray nozzle can spray a liquid cleaning solution froman onboard cleaning solution tank onto the floor being cleaned. Thecleaning solution can be gravity fed through the spray nozzle, oralternatively pumped out of the cleaning solution tank through the spraynozzle. The spray nozzle can be integrated into a scrub sub-system(e.g., 578, FIG. 5), as described herein. The cleaning solution sprayedonto the floor can then be agitated by one or more ground engaging scrubelements 56A, 56B and 56C, such as scrub brushes. In an example, thescrub elements 56A-56C together form a portion of a scrub deck assembly59 of the scrubber system 34 adjacent to a bottom surface of the chassis36. As illustrated in FIGS. 1 and 2, the outside scrub element 56A andan associated skirt 57A can protrude from the side of thesweeper-scrubber 30 to improve scrubbing close to walls and otherobstacles. As will be discussed in detail below, the outside scrubelement 56A can be attached to a pivoting arm that can allow the scrubelement 56A and the adjacent side skirt 57A to swing around a verticalaxis, such that it can travel rearward and/or inward, to retract underthe machine and prevent damage to the scrub deck assembly 59 caused byhitting obstacles. The scrub elements 56A, 56B, 56C and associatedcomponents can be part of a sweep subsystem (e.g., 576, FIG. 5), asdescribed herein.

As illustrated in FIGS. 1 and 2, the ground engaging scrub elements56A-56C can have substantially parallel axes of rotation that aregenerally perpendicular to the floor surface. The scrub elements 56A-56Ccan be rotatably driven by a suitable motor, and can be configured toagitate the cleaning solution sprayed onto the floor surface to dislodgedirt and grime adhered thereto. In addition to the scrub elements56A-56C, the scrubber system 34 can further include a floor engagingvacuum squeegee assembly 58 positioned proximal the chassis rearward end40. The agitated cleaning solution and suspended dirt and grime can bedrawn off the floor surface through the squeegee assembly 58 and intothe recovery tank for disposal, such as with a recovery sub-system (580,FIG. 5), as described herein.

The squeegee assembly 58 can be coupled to a squeegee support bracket 60pivotally attached relative to the chassis 36, and can be moved betweenan operating position and a stored position (when not in use). Thesqueegee assembly 58, which can be operable to dry the floor beingcleaned by the sweeper-scrubber 30, can include a forward arcuatesqueegee blade 62 nested within a rearward arcuate squeegee blade 64. Inan example, the nested squeegee blades 62 and 64 can extendsubstantially across the width of the sweeper-scrubber 30 and can definea crescent shaped vacuum zone 66. The squeegee blades 62 and 64 can beformed from any flexible material that can sealingly engage the floor,including elastomeric materials such as rubber, plastic, or the like.

The forward squeegee blade 62 can be configured to collect the cleaningsolution on the floor, and can include notches in its floor engagingedge which allows the cleaning solution to enter the vacuum zone 66. Therearward squeegee blade 64 can include a continuous floor engaging edgein order to prevent the escape of the cleaning solution rearwardly fromthe vacuum zone 66.

As illustrated in FIGS. 1 and 2, a pair of side brushes 68 can berotatably mounted proximal the chassis forward end 38 and forward of theground engaging scrub elements 56A-C. The side brushes 68 can be drivenby a suitable motor controlled by control circuitry. Each side brush 68can be rotatable about a substantially vertical axis proximal one of thechassis sides 42, and can be configured to urge debris towards acenterline of the chassis 36 for pick-up by a main sweeper brush 69. Inan example, the main sweeper brush 69 can be rotatable about asubstantially horizontal axis. As illustrated in FIGS. 1 and 2, eachside brush 68 can extend radially from its vertical axis past one side42 of the chassis 36 in order to sweep the floor along a wall or othervertical or angled surface. Similar to the squeegee assembly 58, theside brushes 68 can be vertically movable between an operating positionand a storage position.

Hybrid Sweeper-Scrubber: Internal Components

FIG. 3 is an internal perspective of the hybrid sweeper-scrubber 30 ofFIG. 1, the internal components shown as 300. As illustrated in FIG. 3,the hybrid sweeper-scrubber includes an internal combustion engine 352that drives an electrical system alternator 354 via a suitable belt. Theinternal combustion engine 352 can include a number of combustible fuelsincluding, but not limited to, diesel, natural gas, propane, ethanol,petroleum, and the like. The electrical system alternator 354 can beconfigured so as to start the engine and system of the hybridsweeper-scrubber. In an example, the electrical system alternator caninclude a 42V alternator and regulator. The electrical system alternator354 charges an electrical system battery pack 356 and can be operablycoupled to a main controller 362, a speed controller (e.g., FIG. 5,564), and a steering controller (e.g., FIG. 5, 566). The electricalsystem alternator can provide enough power so as to start the engine 352of the hybrid sweeper-scrubber. The hybrid sweeper-scrubber canalternate between a number of running modes of the self-propelled hybridvehicle, including at least an electric running mode and a hybridrunning mode, the hybrid mode include running the engine on acombustible fuel and powering a number of cleaning functions (e.g.,sub-systems) via the electrical system batter pack or electrical systemalternator.

In an example, the electrical system battery pack 356 can include anumber of 36V batteries. The main controller 362, speed controller, andsteering controller are also coupled to the electrical system batterypack 352. The hybrid sweeper-scrubber can provide steering such as awire steering system. A traction drive motor/system can be controlled bythe speed controller. As described herein, engine speed can becontrolled through the main controller 362, so as to adjust the engineoperation to account for whichever cleaning functions are operating.

Control Method 430

Now that an example of a floor cleaning system has been described thatcan utilize the control method of the present patent application, themethod and structure of an illustrative control method 430 will bedescribed in detail with reference to FIGS. 4-5.

FIG. 4 illustrates of an example of a control method 430 of the hybridsweeper-scrubber of FIG. 1. At 432, power can be provided, via anelectrical system alternator (e.g., 354, FIG. 3), to at least onecleaning function of a self-propelled hybrid vehicle. A cleaningfunction can include a number of accessories or sub-systems, asdescribed herein in connection with FIGS. 1-3 and 5. Accessories caninclude a head light, signal lights, break lights, a horn, and the like.

At 434, an operational load can be monitored, including an operationalstate of the at least one cleaning function of the self-propelled hybridvehicle. Operational load can include an engine power output thresholdfor the at least one cleaning functional to be operational. Operationalstate can include on/off or a percentage of full operational speed,power, torque, and the like.

Running State of Engine

At 436, a running state of the internal combustion engine (e.g., 352,FIG. 3) can be controlled based on the monitored operational load, so asto adjust the running speed of the internal combustion engine to adistinct running speed, so as to at least produce the monitoredoperational load. In an example, the running speed can be alteredaccording to a number cleaning functions with an active operation state,so as to dictate an engine power output threshold for the at least onecleaning function to be in the active state. The running speed can beincreased to provide greater power output than the monitored operationalload due to a number of additional environmental impacts on the load, soas to provide enough power for the at least one cleaning function toremain in an active operational state. Environmental impacts caninclude, but are not limited to, inclined or declined surfaces, surfacetypes (e.g., smooth, rough, uneven, etc.), or ambient temperature.

Running Speed of the Engine

The running speed can include an idle speed, so as to provide poweroutput sufficient to charge the electrical system battery pack oroperate an operational accessory. A threshold engine speed can bemaintained for a number of cleaning functions to operate during a manualadjustment of the running speed of the engine, such as by an operator ofthe hybrid sweeper-scrubber. For example, the operator is able toincrease and decrease the engine speed at will, but the main controllerwill not allow the engine to run slower than a power output needed forthe operational cleaning functions.

Regulating Engine Speed

In some examples, the control method and control system can regulateengine speed or revolutions per minute (RPM) at a number of settingsbased on the number of operational cleaning functions, such as bymonitoring the active cleaning functions that are in operation. The RPMscan be set at distinct values. For example, if only the sweep sub-system(e.g., 376, FIG. 5) is operational then a lower sweep RPM setting (RPMSetting #1) of the engine can be activated, such as about 1700 RPM toabout 2500 RPM. However, if both the sweep sub-system and scrubsub-system (e.g., 378, FIG. 5) are being operated then a RPM setting(RPM Setting #2) higher than the lower sweep RPM setting on the enginecan be activated, such as greater than about 2700 RPM.

The control method and system can regulate the engine speed based on anumber of modes, including but not limited to: optional high pressurewasher option can cause the engine to run at a lower RPM mode (RPMSetting #1); if the engine is in idle (RPM Setting Idle), the engine canrun at a lower RPM mode (RPM Setting #1) when sweeping only or vacuumingonly; if the engine is in idle or run, the engine can run in a higherRPM mode (RPM Setting #2) when scrubbing only or scrubbing and sweeping;if an operator override is activated, the operator can change between ahigher RPM mode (RPM Setting #2) and a lower RPM mode (RPM Setting #1)at the operator's discretion; or, if the operator override conditiongoes away (e.g. sweep sub-system turns off) and the operator has notchanged the engine mode, the engine can be returned to the mode beforethe forced override.

Threshold Charge

At 438, a threshold charge can be maintained, via the electrical systemalternator (e.g., 154, FIG. 3), of the electrical system battery pack(e.g., 156, FIG. 3). For example, the amount of voltage stored in theelectrical system battery pack can be maintained or optimized while theengine is running or the hybrid sweeper-scrubber is operational.

Electric Mode Fault

The electric mode can include monitoring the electrical systemalternator for an occurrence of an electrical component fault, such as avoltage below a threshold voltage or an indication of a belt failure.The electrical system alternator can be monitored per a set timeinterval or continuously. Protective measures can be taken if theoccurrence of an electrical component fault is detected, such asproviding a warning to an operator, shutting down the self-propelledhybrid vehicle, or the like.

Hybrid Mode Fault

The hybrid mode can include monitoring the self-propelled hybrid vehiclefor an occurrence of an engine component fault, such as the engine runsout of fuel, if the engine fails, if the engine generator fails, if thebelt from the engine to engine alternator fails, etc. The running modecan be shifted to the electric mode if the occurrence of an enginecomponent fault is detected. As described herein, the running mode canbe altered by an operator if an override mode is activated.

If the machine is operating from the electrical system battery packonly, such as due to a failure in the engine or engine alternator asdiscussed herein or by operator override, the control system can monitorbattery voltage of the electrical system battery pack until a thresholdvoltage condition is met. At such point, the control system can protectthe hybrid sweeper-scrubber by shutting off machine cleaning functionsand shutting down the hybrid sweeper-scrubber.

Example Electrical Control System Schematic

FIG. 5 shows an illustrative schematic diagram 550 of various electricalcomponents 310 that can be provided on the hybrid sweeper-scrubber ofFIGS. 1-3. Like numerals in FIGS. 3 and 5 can represent like components.For example, internal combustion engine 352 in FIG. 3 corresponds to theelectrical aspect of the engine shown as engine system 552 in FIG. 5.

The internal combustion engine 552 can be operably coupled to anelectrical system alternator 554, such as via a belt 553. The electricalsystem alternator 554 can be configured to charge an electrical systembattery pack 556 and operably coupled to a number of controllers 562,564, 566. In an example the electrical system alternator 554 can beoperably coupled to or through a fuse box 560. The number of controllers562, 564, 566 can be operably coupled to the electrical system batterypack 556. Controller 564 can include a speed controller operably coupledto a drive system 570, so as to control the speed of the hybridsweeper-scrubber. Controller 566 can include a steering control operablycoupled to a steering system 572, so as to steer or provide directionalcapabilities to the hybrid sweeper-scrubber. Controller 562 can includea machine main controller (MMC) that is operably coupled to the internalcombustion engine and configured to control a running state of theengine 552 of the self-propelled hybrid vehicle based on a monitoredoperational load. The main controller 562 can be operably coupled to anyof a user interface 568, an accessory 574, or a number of sub-systems576, 578, 580, 582, directly or indirectly. The user interface 568 canbe configured so as to indicate a status of a sub-system, a measurement,an alarm, a time, or the like. The MMC 562 can be configured to monitorthe electrical system alternator 554 to detect failures, as describedherein.

The sub-systems can include any of a sweep sub-system 576, a scrubsub-system 578, or a recovery sub-system 580, as described herein.Further, the control method and system can include an engine system 552,such as an engine controller controlled by the MCM 562 or a computerprocessing unit associate with control logic for operation of the engine552 (e.g., engine 352, FIG. 3).

An engine alternator 558 can be operably coupled to an engine battery360, so as to start the internal combustion engine 552, as describedherein.

A switching component can also be provided that can be configured toalternate the self-propelled hybrid vehicle between a number of runningmodes, the number of running modes including at least an electric modeand a hybrid mode, as described herein. A running state overrideswitching component can be configured to override an operator initiatedrunning state if the operator running initiated state is below athreshold run state based on the monitored operational load, asdescribed herein.

In an example, the hybrid sweeper-scrubber can include a regenerativebraking method or system to improve fuel efficiency, such as providingcharge to the electrical system battery pack. The hybridsweeper-scrubber control method and system can include a dataacquisition system, so as to provide a number of measurements used incharge algorithms, running speed algorithms, failure mode detections,and the like.

The main alternator in the hybrid sweeper-scrubber can be sized toprovide power to all of the cleaning functions of the machine, with theexception of the engine system, and for maintaining a charge on the mainsystem battery pack during operation. The main system battery packprovides a “buffer” to handle the inrush currents and heavy loadcurrents that exceed the capacity of the main alternator. Such “heavyloads” can be caused by sweeping/scrubbing up inclines, etc.Additionally, the main system battery pack is not merely a “back-up”source of power. Rather, the sweeper-scrubber is fully operational inthe battery operated mode for an extended period of time, such as theduration of the charge.

Example Control System for Automated Power Control

FIG. 6 is a functional diagram of aspects of another example controlsystem 600 including an MMC operably coupled to an engine and a powermodule 610 operably coupled to the MMC 662 via a controller area network(CAN) bus 650. In the present example, two power modules 610, 620 areprovided, each having respective CAN buses 650, 660, however, anysuitable number of power modules (e.g., one or more) can be provided.One of the benefits of using two smaller power modules in place of onelarger power module is that cost can be reduced and modularity can beimproved.

The one or more power modules 610, 620 can be used with a machine suchas, but not limited to, the hybrid sweeper-scrubber machine 30 of FIG.1, in accordance with at least one example. In contrast to the controlsystem 500, instead of the MMC 562 communicating directly with thesub-systems (e.g., 576, 578 and 580), in the example of FIG. 6, the oneor more power modules 610, 620 can control the high-power motors 630A-C,640A-C of the control system 600. In other words, the power modules 610,620 can handle the high-power output functions for the machine 30 andcommunicate information back to the MMC 662, while the main controlfunction of the overall machine can be provided by the MMC 662. Thepower modules 610, 620 can send and receive commands from the MMC 662via the one or more CAN buses 650, 660. CAN bus networks will bedescribed in further detail later in this disclosure.

The power modules 610, 620 can receive logic power from an alternator(e.g., 558, FIG. 3). When more than one power module is provided, eachof the power modules 610, 620 can have control of its own high-powerinput from a respective relay between the MMC 662 and the respectivepower module 610, 620.

In the example of FIG. 6, the power modules 610, 620 can monitor theperformance, operation and health of the motors 630A-C, 640A-C, andcommunicate a status back to the MMC 662 via the CAN buses 650, 660. Inother words, the power modules 610, 620 can provide basic motor controland protection, while the MMC 662 can control the actual operationcommands of the overall machine including the motors 630A-C, 640A-C. Insome examples, the power modules 610, 620 can be configured to not haveany direct inhibit signals (such as a seat switch or an emergency stopsignal), except by commands provided on the CAN buses 650, 660.

A benefit of the control system of FIG. 6 is that the power modules 610,620 can monitor the current across all electrical components without theneed for having individual current sensors. The power modules 610, 620can control motors that power brooms, fans, vacuums, dump doors,shakers, hoppers, brushes, squeegees, decks, among other functions.

Another feature of the control system 600 is that the power modules 610,620 can communicate information to the MMC 662, and the MMC 662 can thenautomatically increase or decrease the engine revolutions per minute(RPM) based on the overall load (e.g., current draw) in addition toconsidering the current functional mode (e.g., operational state) of themachine 30. This can improve the overall functionality of asweeper-scrubber machine 30 as compared to a conventional machine thatonly sets an engine RPM default value based solely on the selectedfunctional mode of the machine 30 or manual override, withoutconsideration of other power demands, including environmental demandsthat can affect the machine 30.

The control system of FIG. 6 can eliminate the need for the operator tomonitor and recognize a need for more power and then manually choose toincrease the RPM when there is a high power requirement. Instead, thepower modules 610, 620 can monitor the current across the electricalcomponents (e.g., modules, sub-systems, motors) 630A-C, 640A-C of thecontrol system 600, and send a message to the MMC 662 which candetermine and enable automatic power adjustment when needed.Environmental demands that can require additional power include, forexample, when the machine 30 is going up an incline or over a roughsurface.

In addition to the power modules 610, 620, other modules can be operablyconnected to the MMC 662, such as a wheel drive module 670 and asteering module 680. The wheel drive module 670 can control a drivemotor of the machine based on commands from the operator foot pedal, theMMC 662 and feedback from the drive motor itself. The steering module680 can control a steering motor based on commands from the operatorsteering wheel (e.g., a sensor) and feedback from the steering motor andone or more steering limit switches. The steering module can also enableor disable the drive function if the steering system is not ready tomove the machine.

An engine control module can monitor engine functions and communicatewith the MMC to provide engine status to the MMC. In some cases anengine controller can be integral to the engine and can operate andmonitor engine functions semi-autonomously. Control of the engine speedwill be further described with respect to the method 800 of FIG. 8

CAN Bus Network

As previously described, the power modules 610, 620 can be connected tothe MMC 662 via one or more CAN bus networks 650, 660. The MMC (e.g.,662, FIG. 6) can provide commands to the other controllers directingthem to complete their associated tasks. The MMC 662 can also directly(or indirectly) control many of the low-power motors and devices, andmonitor many of the system sensors, such as: detergent pumps, scrubberpumps, dust guard pumps and valves, solution pumps and valves, horns,back up alarms, hydraulic clutches, headlights, turn signals and taillights.

A general description of CAN bus networks 700 will now be described withreference to FIG. 7. CAN bus communication can allow distributed modules710, 720, 730 to communicate with each other over a single serialchannel without any single module being the master of the communicationchannel This means that each module can broadcast what it has to say,and all the other modules on the CAN bus network 700 can see themessage, but pay attention only to those messages they need to knowabout.

The CAN bus is a twisted-pair of wires 740, 750 running between thedistributed modules 710, 720, 730 (and such as the modules of FIG. 6),with one wire being low 740 and the other wire high 750, voltage-wise.To send a data bit the module pulls the high and low wires apart,voltage-wise. All of the other modules monitor this to detect acommunication message, which is a string of low and high binary pulses.However, the binary logic states are reverse of typical, in that alogic-1 is recessive and the difference between CAN-high and CAN-low(e.g., near zero). A logic-0 is the dominant bit, and the differencebetween CAN-high and CAN-low is high (e.g., approximately 2.5 volts).

Because none of the distributed modules 710, 720, 730 represent themaster of the CAN bus network 700, any of the distributed modules 710,720, 730 can initiate a CAN bus transmission any time there is notalready traffic on the CAN bus 700. When the module detects inactivityon the CAN bus 700, it transmits a dominate bit, and begins sending themessage priority level bits. But at the same time, it is also monitoringthe bus itself to detect if a higher priority message was beinginitiated at the same time. The message with the higher priority levelwill have the bus high for the longest period, and therefore, thatmodule knows that it is sending the highest priority message. The othermodule ceases its transmission and waits until the CAN bus is availableagain.

Generally, most CAN bus 700 messages originate from the main controller(e.g., MMC 662, FIG. 6), or in response to a request from the MCM.However, each module can send emergency messages at any time.

Method of Engine Speed Control

FIG. 8. shows an illustrative method 800 of controlling a motive machine(e.g., 30, FIG. 1) in accordance with at least one example. The method800 can be used with, but is not limited to, the example control system600 including CAN buses 650, 660 of FIG. 6.

According to the method 800, the MMC (e.g., 662, FIG. 6) can control theoverall operation of the machine 30 based on inputs received from thefirst and second power modules 610, 620, the wheel drive module 670, thesteering module 680 and the engine control module 652, as well as anyother suitable inputs. Using this information, the MMC (e.g., 662, FIG.6) can control operation of the machine 30, including controlling anengine speed. Engine speed can be measured in revolutions per minute(RPM). The method 800 will be described mainly with respect to themachine 30 of FIGS. 1-3 and the control system of FIG. 6.

Operation 810 of the method 800 can include controlling, based on aselected functional mode of the machine 30, an engine RPM to a defaultengine RPM.

Operation 820 can include the MMC 662 receiving, from the power module610, load information corresponding to a load of a sub-system havingmotors 630A-C that are operably coupled to the power module 610. Thepower module 610 can communicate load information to the MMC 662 via thefirst CAN bus 650.

In some examples, as shown in FIG. 6, multiple power modules 610, 620can be provided and can communicate current load and other informationto the MMC 662 over respective CAN buses 650, 660, in order to controlengine speed and the other functions of the machine 30. For the sake ofbrevity, the method 800 will be described with respect to a systemmachine having one power module 610.

Operation 830 can include automatically adjusting the engine speed(e.g., rpm) not based solely on the selected functional mode of themachine 30, but also based on the sub-system (e.g., motors 630A-C) loadinformation received from the power module 610. In a method having twopower modules, the load information from the second power module 620 canbe added to the load information from the first power module 610 indetermining the automatic adjustment.

One benefit of increasing or decreasing the engine speed based onsub-system load information received from a power module 610, is thatengine speed control becomes more automated, which improves the user'sexperience by simplifying use and improving performance When enginespeed is automatically controlled, the user does not have to manuallymodify the engine speed. This means the user does not have to have asmuch knowledge about operation of the machine, increasing ease of useand improving performance In addition to improving the user'sexperience, by using the power modules, the method 800 is able to do sowithout external current sensors for each electrical component,resulting in decreased manufacturing cost.

Some example automatic adjustments in engine speed according to themethod 800 will now be described. For example, a machine operating inthe transport, sweep or recovery functional mode can operate at adefault RMP of 2500. If, while monitoring the load of the varioussub-systems (e.g., motors 630A-C, FIG. 6) of the machine (e.g., 30, FIG.1), the MMC (e.g., 662, FIG. 6) determines, based at least in part oninformation from the power module (e.g., 610, FIG. 6) that the loadmonitoring is greater than 100 Amperes, the RPM can be automaticallyincreased to 2700 RPM. The MMC 662 can continue to monitor the load, andwhen the amperage drops, the RPM can reduce back to 2500 RPM.

In another similar example, a machine operating in the transport mode ata default of 1700 RPM experiences a load greater than 60 Amperes. Tocompensate, the RPM could be automatically increased to 2500 RPM, andthen gradually reduce back to 1700 rpm as the load drops.

Method of Improving Motor Life

In the control system of FIG. 6, the power module 610 can monitor theload (e.g., current draw) on individual scrub motors 630A-C. Theinventors have discovered, that typically, when there is an overload, itis only one of the scrub motors that is going through the overload,while the other scrub motors are still under loaded.

As shown in FIG. 9, method 900 can include a power module 610 thatmonitors the current draw from the individual scrub motors 630A-C andcan reduce the load on a specified motor if the MMC 662 determines,based on the monitored current received from the power module 610 thatthe specified motor (e.g., one of 630A, 630B or 630C) is overloaded(e.g., transgressed or exceeded a load threshold.

The method 900 of FIG. 9 can be performed using the sweeper-scrubbermachine 30 of FIGS. 1 and 2, having three scrub elements 56A-C (FIG. 2)operated by three scrub motors 630A-C (FIG. 6). However, any number ofscrub motors and elements can be provided, including a plurality ofscrub motors and scrub elements or a singular scrub motor and scrubelement, or unequal numbers of scrub motors and scrub elements.

Operation 910 of the method 900 can include the power module 610receiving an indication to provide power to one or more of the scrubmotors 630A-C (FIG. 6). Operation 910 can occur when a user selects thescrubbing functional mode of the machine 30.

In response to receiving an indication to provide power, operation 920can include the power module 610 providing power to the scrub motors56A-C.

Operation 930 can include monitoring a load (e.g., current load) on oneor more of the scrub motors 56A-C with the power module 610. Based onthe monitoring conducted in operation 930, operation 940 can include theMMC determining that one or more of the scrub motors 630A-C isoverloaded such that the current load on the scrub motor hastransgressed a threshold (e.g., exceeding a specified current orvoltage).

If in operation 940, the MMC determines that a motor is overloaded, thenin operation 950, the power module 610 can actuate an actuator 1010(FIG. 10) to temporarily lift the overloaded scrub element (e.g., 56A,FIG. 10) in order to reduce the load on the overloaded motor (e.g.,630A, FIG. 10). Lifting the scrub element 56A decreases the normal force3 that is exerted on the scrub element 56A by the ground 1. Thistemporary lifting action 5 of the scrub element 56A by the actuator 1010can protect the motor from damage.

FIG. 10 illustrates an example arrangement of an actuator 1010 that canperform the lifting action 5 of the method 900. As shown in FIG. 10, theactuator 1010 can lift both the scrub element 56A and the motor 630A.However, in some examples, the actuator 1010 can be arranged relative tothe scrub motor 630A and the scrub element 56A so that just the scrubelement 56A is lifted, with the motor 630A remaining stationary in afixed relationship with the frame of machine 30.

In an example, an actuator can be provided with any of the electricalcomponents in order to move the electrical component to preventoverloading on a motor. The actuator can move individual motors andother electrical components such as a scrub motor as previouslydescribed, but an actuator can also be used with, for example, asweeping motor, a vacuum motor, a vacuum squeegee, a deck, a steeringelement, a traction element, a fan, a dust collector or a broom. Anactuator can be provided with any suitable electrical component that canbe prevented from overloading by a lifting action. In some examples, oneactuator can move a plurality of electrical components together, such asmoving a plurality of scrub elements.

In addition to the method 900 of reducing a load on a scrub motor 630Aby lifting the scrub element 56A with an actuator 1010 as depicted inFIG. 10, the load on a scrub motor, or any other type of motor, can beaccomplished by other methods described herein. For example, FIG. 11shows a method 1100 where a load reduction on a motor can beaccomplished by adjusting a pulse width modulation (PWM) power suppliedto the motor. For example, the PWM power delivered to a motor that isoverloaded can be adjusted such that the power delivered to theoverloaded motor is reduced. This results in the overloaded motorrunning at a lower RPM and therefore less load.

PWM can be applied to other components besides motors. PWM can be usedto control the output voltage for any of the electrical componentsirrespective of the input voltage from the battery. Using PWM, the lifeof motors, including scrub motors and vacuum motors, can be improved inless demanding applications, as they can be operated at a lesser voltagewhen the application does not require it. A second benefit of using PWMis that it can help modularize manufacturing by allowing the same motorsto be used across different machines that have different batteries(e.g., different voltage power packs).

For example, as shown in FIG. 11, a load reduction on a motor can beaccomplished by a method of monitoring and powering of motors via apower module. Example method 1100 of FIG. 11 will be described withreference to the control system of FIG. 6, but can be used with othercontrol systems having a different number and arrangement of powermodules, motors and other electrical components.

Operation 1110 of the method 1100 can include a power module 610receiving an indication to power one or more motors of a set of motors630A-C from the MMC 662.

Operation 1120 can include the MMC 662, via a power module 610,providing power to at least one of the one or motors 630A-C that areoperably coupled to the power module 610.

Operation 1130 can include the power module monitoring a load on atleast one of the one or more motors.

Operation 1140 can include the MMC determining, based on the monitoredload received from the power module 610, that the load on one of themonitored motors has transgressed a load threshold (e.g. overloaded).The load threshold can be measured as a current load.

Operation 1150 can include that if the load threshold has beentransgressed by any one of the one or more motors, adjusting the PWMpower provided to the overloaded motor to reduce an output thereof.

Although not required, in the example control system of FIG. 6, thereare two power modules and two sets of motors. In that example, a firstpower module 610 is operably coupled to a first set of motors 630A-C,and a second power module 620 is operably coupled to a second set ofmotors 640A-C. In examples having multiple power modules, the methodsdescribed herein can be applied to one or both power modules.

For example, the method 1100 can be applied not just to a power module610 (e.g., first power module), but also a second power module 620 canreceive an indication to power one or more motors of a second set ofmotors 630A-C that are operably coupled to the second power module 620.Method 1100 can further include providing power, with the second powermodule 620 by PWM to the one or more motors 640A-C of the second set ofmotors, as shown in the control system 600 of FIG. 6.

If the second power module 620 communicating to the MMC, whilemonitoring a load on one or more motors 640A-C of the second set ofmotors, results in the MMC determining that any of the one or moremotors of the second set of motors has transgressed a second loadthreshold, the second power module, via communication from the MMC, canadjust the power provided to the motor that transgressed the second loadthreshold. Adjusting the power by PWM can reduce the output of the motorthat transgressed the second load threshold to reduce the outputthereof.

The control system of FIGS. 6-11 provides numerous advantages including,but not limited to, the ability to provide automated power managementwithout the need for external current sensors for individual components.The present disclosure results in improved automated power management, areduction in the number electrical components that is required to do so,and increase in the life of and durability of the machine.

Machine-Readable Medium

The control system and method described herein can be executed by atleast one non-transitory machine readable medium including instructionsfor a main machine controller (MMC) to operate the control system forthe motive machine. The motive machine having a power module and asub-system (e.g., power module 610, motors 630A-C, FIG. 6).

The instructions, when executed by a processor, can cause the processorto: 1) control, based on a selected function mode of the machine, anengine speed of an engine to a default engine speed; 2) receive, fromthe power module via the CAN bus, load information corresponding to aload of the sub-system; and 3) automatically adjust the engine speedbased on the sub-system load information and the selected functionalmode of the machine.

The machine readable medium can further cause the processor to monitor,with the power module, a current load on the scrub motor, and if the MMCdetermines that the current load on the scrub motor has transgressed athreshold, cause the actuator to be actuated to lift the scrub elementto reduce the load on the motor by decreasing the force on the scrubelement.

The machine readable medium can further cause the processor to: 1)receive, from the power module via the CAN bus, an indication to powerone or more motors of a first set of motors that are operably coupled tothe power module; 2) provide power, with the power module, by pulsewidth modulation (PWM) to the one or more motors; 3) monitor, with thepower module, a load on the one or more motors; 4) determine, with MMC,if any of the one or more motors transgressed a load threshold; and 5)if the load threshold has been transgressed by any of the one or moremotors, adjust, with the power module, the power provided to the motorthat transgressed the load threshold to reduce an output thereof.

The processor can also apply similar instructions to the second powermodule operably coupled to the MMC by the second CAN bus. The processorcaused to: 1) receive an indication, at a second power module, to powerone or more motors of a second set of motors that are operably coupledto the second power module; 2) provide power, with the second powermodule, by pulse width modulation (PWM) to the one or more motors of thesecond set of motors; 3) monitor, with the second power module, a loadon one or more motors of the second set of motors; 4) determine, withthe MMC, if any of the one or more motors of the second set of motorshas transgressed a second load threshold; and 5) if the second loadthreshold has been transgressed by any of the one or more motors of thesecond set of motors, adjust, with the second power module, the powerprovided to the motor that transgressed the second load threshold toreduce an output thereof.

The instructions, when executed by a processor, can also cause theprocessor to perform at least two of: sweeping, scrubbing, recovering,idling and transporting, depending on the functional mode of the machineselected by the user.

Solenoid Fail-Safe

To protect the machine 30 (FIG. 1) in the case of a short in themachine, a solenoid 1300 may be provided that can be associated with apower module (such as the previously described power modules 610, 620described with respect to FIG. 6).

FIG. 12 shows an example of the overall operation of a solenoid 1300corresponding to an example power module schematic 1200. The solenoid1300 is identified in the two boxes in FIG. 12, and the solenoid 1300shown in further detail in FIG. 13. In an example where the machineincludes multiple power modules, multiple solenoids can be provided, asolenoid corresponding to each power module.

In the example of FIGS. 12 and 13, the fail-safe works by the machinenot switching on output from a power module (e.g., 610, FIG. 10) until ahigh side current switch (FIG. 13, HI) of the solenoid closes. Thesolenoid 1300 closes after power on self-tests of the machine have beensuccessfully completed and no shorts or errors have been identified. Ifa short or error is identified, the solenoid 1300 does not close inorder to protect the rest of the machine 30 in the event that any of theindividual components of the machine have a severe fault or short.

Various Notes and Examples

To better illustrate the devices and methods disclosed herein, anon-limiting list of embodiments is provided herein.

Example 1 is a motive machine that is selectively operable in aplurality of functional modes, the machine comprising: an engine; a mainmachine controller (MMC) operably coupled to the engine; a power moduleoperably coupled to the MMC by a controller area network (CAN) bus; anda sub-system operably coupled to the power module by the CAN bus,wherein the power module monitors a load of the sub-system, and usingthe monitored load of the sub-system, the power module communicatessub-system load information to the MMC, and wherein the MMCautomatically adjusts an engine speed based on the sub-system loadinformation and the selected functional mode of the machine.

In Example 2, the subject matter of Example 1 includes, a scrub motorthat is operably coupled to the power module, the scrub motor having ascrub element that is movable by an actuator, wherein the power modulemonitors a current load on the scrub motor and communicates the currentload to the MMC, and if the MMC determines that the current load on thescrub motor has transgressed a threshold, the MMC, through the powermodule, actuates the actuator to lift the scrub element to reduce theload on the scrub motor.

In Example 3, the subject matter of Examples 1-2 includes, a pluralityof individual scrub motors that are operably coupled to the powermodule, and one or more of the individual scrub motors has a scrubelement that is movable by an actuator, and wherein the power modulemonitors a current load on the individual scrub motors and communicatesthe current load to the MMC, and if the MMC determines that the currentload on one of the individual scrub motors that has an actuator hastransgressed a threshold, the MMC, through power module, actuates theactuator for that scrub element to lift the scrub element to reduce theload on the scrub motor.

In Example 4, the subject matter of Examples 1-3 includes, wherein themachine is a sweeper-scrubber machine, and the functional modes includeat least two of: sweeping, scrubbing, recovering, idling andtransporting.

In Example 5, the subject matter of Examples 1-4 includes, wherein themachine is a hybrid machine having both fuel-powered and battery-poweredmodes.

In Example 6, the subject matter of Examples 1-5 includes, a secondsub-system, and wherein the power module monitors the load across thefirst and second sub-systems without individual current sensors operablycoupled to each of the first and second sub-systems.

In Example 7, the subject matter of Examples 1-6 includes, wherein thefirst sub-system is a steering module and the second sub-system is adrive module.

In Example 8, the subject matter of Examples 1-7 includes, wherein themonitored load is a measured current level.

In Example 9, the subject matter of Examples 1-8 includes, a first setof motors that are operably coupled to the power module, wherein powerprovided to the first set of motors is adjustable by pulse widthmodulation (PWM), wherein the power module monitors a load on at leastsome of the motors of the first set of motors, and communicates the loadto the MMC, and if the MMC determines that the load on one of themonitored motors has transgressed a load threshold, the PWM is adjustedto reduce an output of the motor that transgressed the load threshold.

In Example 10, the subject matter of Example 9 includes, a second powermodule operably coupled to the MMC by a second CAN bus, the second powermodule operably coupled to a second set of motors, wherein power to thesecond set of motors is adjustable by pulse width modulation (PWM), andwherein the second power module monitors a load on at least one of themotors of the second set of motors, and communicates the load to theMMC, and if the MMC determines that the load on one of the monitoredmotors has transgressed a second threshold, the PWM is adjusted toreduce an output of that motor.

Example 11 is a method for controlling a motive machine having a mainmachine controller (MMC) operably coupled to a power module by a CANbus, the method comprising: controlling, based on a functional mode ofthe machine, an engine revolutions per minute (RPM) of an engine to adefault engine RPM; receiving, from the power module, load informationcorresponding to a load of a sub-system operably coupled to the powermodule; and automatically adjusting the engine RPM based on thesub-system load information and the functional mode of the machine.

In Example 12, the subject matter of Example 11 includes, wherein thepower module is operably coupled to a scrub motor having a scrub elementthat is movable by an actuator, the method further comprising:monitoring, with the power module, a current load on the scrub motor;communicating, from the power module to the MMC, the current load on thescrub motor; and determining, with the MMC, if the current load hastransgressed a threshold, and if the threshold has been transgressed,causing the actuator to be actuated to lift the scrub element to reducethe load on the motor by decreasing a force on the scrub element.

In Example 13, the subject matter of Examples 11-12 includes, whereinthe method further comprises: receiving an indication from the MMC, atthe power module, to power one or more motors of a set of motors thatare operably coupled to the power module; providing power, with thepower module, by pulse width modulation (PWM) to the one or more motors;monitoring, with the power module, a load on the one or more motors;determining, with the MMC using the monitored load from the powermodule, if any of the one or more motors has transgressed a loadthreshold; and if the load threshold has been transgressed by any of theone or more motors, adjusting, with the power module, the power providedto the one or more motors that transgressed the load threshold to reducean output thereof.

In Example 14, the subject matter of Example 13 includes, the motivemachine further including a second power module operably coupled to theMMC by a second CAN bus, the method further comprising: receiving anindication from the MMC, at a second power module, to power one or moremotors of a second set of motors that are operably coupled to the secondpower module; providing power, with the second power module, by pulsewidth modulation (PWM) to the one or more motors of the second set ofmotors; monitoring, with the second power module, a load on the one ormore motors of the second set of motors; determining, with the MMC usingthe monitored load from the second power module, if any of the one ormore motors of the second set of motors has transgressed a second loadthreshold; and if the second load threshold has been transgressed by anyof the one or more motors of the second set of motors, adjusting, withthe second power module, the power provided to the motor thattransgressed the second load threshold to reduce the output thereof.

Example 15 is at least one machine-readable medium includinginstructions for a main machine controller (MMC) to operate a controlsystem for a motive machine, the motive machine having a power moduleand a sub-system operably coupled to the MMC by a CAN bus, and theinstructions, when executed by a processor, cause the processor to:control, based on a selected functional mode of the machine, an enginespeed of an engine to a default engine speed; receive, from the powermodule via the CAN bus, load information corresponding to a load of thesub-system; and automatically adjust the engine speed based on thesub-system load information and the selected functional mode of themachine.

In Example 16, the subject matter of Example 15 includes, wherein thepower module is operably coupled to a scrub motor having a scrub elementthat is movable by an actuator, the instructions, when executed by aprocessor, further cause the processor to: monitor, with the powermodule, a current load on the scrub motor; and communicate to the MMCthe current load; and determine, with the MMC, if the current load onthe scrub motor has transgressed a threshold, and if the threshold hasbeen transgressed, cause the actuator to be actuated to lift the scrubelement to reduce the load on the motor by decreasing a force on thescrub element.

In Example 17, the subject matter of Examples 15-16 includes, theinstructions, when executed by a processor, further cause the processorto: receive, from a user input, an indication to power one or moremotors of a first set of motors that are operably coupled to the powermodule; provide power, with the power module, by pulse width modulation(PWM) to the one or more motors; monitor, with the power module, a loadon the one or more motors; determine, with the power module, if any ofthe one or more motors transgressed a load threshold; and if the loadthreshold has been transgressed by any of the one or more motors,adjust, with the power module, the power provided to the motor thattransgressed the load threshold to reduce an output thereof.

In Example 18, the subject matter of Examples 15-17 includes, the motivemachine further having a second power module operably coupled to the MMCby a second CAN bus, the instructions, when executed by a processor,further cause the processor to: receive, from a user input, anindication, t, to power one or more motors of a second set of motorsthat are operably coupled to the second power module; provide power,with the second power module, by pulse width modulation (PWM) to the oneor more motors of the second set of motors; monitor, with the secondpower module, a load on one or more motors of the second set of motors;determine, with the second power module, if any of the one or moremotors of the second set of motors has transgressed a second loadthreshold; and if the second load threshold has been transgressed by anyof the one or more motors of the second set of motors, adjust, with thesecond power module, the power provided to the motor that transgressedthe second load threshold to reduce an output thereof.

In Example 19, the subject matter of Examples 15-18 includes, whereinthe instructions when executed by a processor, further cause theprocessor to perform at least two of: sweeping, scrubbing, recovering,idling and transporting, depending on a functional mode of the machineselected by a user.

Example 20 is a motive machine that is selectively operable in aplurality of functional modes, the machine comprising: an engine; a mainmachine controller (MMC) operably coupled to the engine; a power moduleoperably coupled to the MMC by a controller area network (CAN) bus; asub-system operably coupled to the power module by the CAN bus, whereinthe power module monitors a load of the sub-system, and using themonitored load of the sub-system, the power module communicatessub-system load information to the MMC; and a solenoid associated withthe power module, wherein the solenoid protects the machine in case of ashort, and wherein the output from the power module is switched on whena high side current switch of the solenoid closes, and wherein thesolenoid closes after power on self-tests of the machine have beensuccessfully completed and no shorts or errors have been identified.

Example 21 is at least one machine-readable medium includinginstructions that, when executed by processing circuitry, cause theprocessing circuitry to perform operations to implement of any ofExamples 1-20.

Example 22 is an apparatus comprising means to implement of any ofExamples 1-20.

Example 23 is a system to implement of any of Examples 1-20.

Example 24 is a method to implement of any of Examples 1-20.

The above detailed description includes references to the accompanyingdrawings, which form a part of the detailed description. The drawingsshow, by way of illustration, specific embodiments in which theinvention can be practiced. These embodiments are also referred toherein as “examples.” Such examples can include elements in addition tothose shown or described. However, the present inventors alsocontemplate examples in which only those elements shown or described areprovided. Moreover, the present inventors also contemplate examplesusing any combination or permutation of those elements shown ordescribed (or one or more aspects thereof), either with respect to aparticular example (or one or more aspects thereof), or with respect toother examples (or one or more aspects thereof) shown or describedherein.

In the event of inconsistent usages between this document and anydocuments so incorporated by reference, the usage in this documentcontrols.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one, independent of any otherinstances or usages of “at least one” or “one or more.” In thisdocument, the term “or” is used to refer to a nonexclusive or, such that“A or B” includes “A but not B,” “B but not A,” and “A and B,” unlessotherwise indicated. In this document, the terms “including” and “inwhich” are used as the plain-English equivalents of the respective terms“comprising” and “wherein.” Also, in the following claims, the terms“including” and “comprising” are open-ended, that is, a system, device,article, composition, formulation, or process that includes elements inaddition to those listed after such a term in a claim are still deemedto fall within the scope of that claim. Moreover, in the followingclaims, the terms “first,” “second,” and “third,” etc. are used merelyas labels, and are not intended to impose numerical requirements ontheir objects.

The above description is intended to be illustrative, and notrestrictive. For example, the above-described examples (or one or moreaspects thereof) can be used in combination with each other. Otherembodiments can be used, such as by one of ordinary skill in the artupon reviewing the above description. The Abstract is provided to complywith 37 C.F.R. § 1.72(b), to allow the reader to quickly ascertain thenature of the technical disclosure. It is submitted with theunderstanding that it will not be used to interpret or limit the scopeor meaning of the claims. Also, in the above Detailed Description,various features can be grouped together to streamline the disclosure.This should not be interpreted as intending that an unclaimed disclosedfeature is essential to any claim. Rather, inventive subject matter canlie in less than all features of a particular disclosed embodiment.Thus, the following claims are hereby incorporated into the DetailedDescription as examples or embodiments, with each claim standing on itsown as a separate embodiment, and it is contemplated that suchembodiments can be combined with each other in various combinations orpermutations. The scope of the invention should be determined withreference to the appended claims, along with the full scope ofequivalents to which such claims are entitled.

1. A motive machine that is selectively operable in a plurality offunctional modes, the machine comprising: an engine; a main machinecontroller (MMC) operably coupled to the engine; a power module operablycoupled to the MMC by a controller area network (CAN) bus; and asub-system operably coupled to the power module by the CAN bus, whereinthe power module monitors a load of the sub-system, and using themonitored load of the sub-system, the power module communicatessub-system load information to the MMC, and wherein the MMCautomatically adjusts an engine speed based on the sub-system loadinformation and the selected functional mode of the machine.
 2. Themachine of claim 1, further comprising a scrub motor that is operablycoupled to the power module, the scrub motor having a scrub element thatis movable by an actuator, wherein the power module monitors a currentload on the scrub motor and communicates the current load to the MMC,and if the MMC determines that the current load on the scrub motor hastransgressed a threshold, the MMC, through the power module, actuatesthe actuator to lift the scrub element to reduce the load on the scrubmotor.
 3. The machine of claim 1, further comprising a plurality ofindividual scrub motors that are operably coupled to the power module,and one or more of the individual scrub motors has a scrub element thatis movable by an actuator, and wherein the power module monitors acurrent load on the individual scrub motors and communicates the currentload to the MMC, and if the MMC determines that the current load on oneof the individual scrub motors that has an actuator has transgressed athreshold, the MMC, through power module, actuates the actuator for thatscrub element to lift the scrub element to reduce the load on the scrubmotor.
 4. The machine of claim 1, wherein the machine is a surfacecleaning machine, and the functional modes include at least two ofsweeping, scrubbing, recovering, idling and transporting.
 5. The machineof claim 1, wherein the machine is a hybrid machine having bothfuel-powered and battery-powered modes.
 6. The machine of claim 1,further comprising a second sub-system, and wherein the power modulemonitors the load across the first and second sub-systems withoutindividual current sensors operably coupled to each of the first andsecond sub-systems.
 7. The machine of claim 1, wherein the firstsub-system is a steering module and the second sub-system is a drivemodule.
 8. The machine of claim 1, wherein the monitored load is ameasured current level.
 9. The machine of claim 1, further comprising afirst set of motors that are operably coupled to the power module,wherein power provided to the first set of motors is adjustable by pulsewidth modulation (PWM), wherein the power module monitors a load on atleast some of the motors of the first set of motors, and communicatesthe load to the MMC, and if the MMC determines that the load on one ofthe monitored motors has transgressed a load threshold, the PWM isadjusted to reduce an output of the motor that transgressed the loadthreshold.
 10. The machine of claim 9, further comprising a second powermodule operably coupled to the MMC by a second CAN bus, the second powermodule operably coupled to a second set of motors, wherein power to thesecond set of motors is adjustable by pulse width modulation (PWM), andwherein the second power module monitors a load on at least one of themotors of the second set of motors, and communicates the load to theMMC, and if the MMC determines that the load on one of the monitoredmotors has transgressed a second threshold, the PWM is adjusted toreduce an output of that motor.
 11. A method for controlling a motivemachine having a main machine controller (MMC) operably coupled to apower module by a CAN bus, the method comprising: controlling, based ona functional mode of the machine, an engine revolutions per minute (RPM)of an engine to a default engine RPM; receiving, from the power module,load information corresponding to a load of a sub-system operablycoupled to the power module; and automatically adjusting the engine RPMbased on the sub-system load information and the functional mode of themachine.
 12. The method of claim 11, wherein the power module isoperably coupled to a scrub motor having a scrub element that is movableby an actuator, the method further comprising: monitoring, with thepower module, a current load on the scrub motor; communicating, from thepower module to the MMC, the current load on the scrub motor; anddetermining, with the MMC, if the current load has transgressed athreshold, and if the threshold has been transgressed, causing theactuator to be actuated to lift the scrub element to reduce the load onthe motor by decreasing a force on the scrub element.
 13. The method ofclaim 11, wherein the method further comprises: receiving an indicationfrom the MMC, at the power module, to power one or more motors of a setof motors that are operably coupled to the power module; providingpower, with the power module, by pulse width modulation (PWM) to the oneor more motors; monitoring, with the power module, a load on the one ormore motors; determining, with the MMC using the monitored load from thepower module, if any of the one or more motors has transgressed a loadthreshold; and if the load threshold has been transgressed by any of theone or more motors, adjusting, with the power module, the power providedto the one or more motors that transgressed the load threshold to reducean output thereof.
 14. The method of claim 13, the motive machinefurther including a second power module operably coupled to the MMC by asecond CAN bus, the method further comprising: receiving an indicationfrom the MMC, at a second power module, to power one or more motors of asecond set of motors that are operably coupled to the second powermodule; providing power, with the second power module, by pulse widthmodulation (PWM) to the one or more motors of the second set of motors;monitoring, with the second power module, a load on the one or moremotors of the second set of motors; determining, with the MMC using themonitored load from the second power module, if any of the one or moremotors of the second set of motors has transgressed a second loadthreshold; and if the second load threshold has been transgressed by anyof the one or more motors of the second set of motors, adjusting, withthe second power module, the power provided to the motor thattransgressed the second load threshold to reduce the output thereof. 15.At least one machine-readable medium including instructions for a mainmachine controller (MMC) to operate a control system for a motivemachine, the motive machine having a power module and a sub-systemoperably coupled to the MMC by a CAN bus, and the instructions, whenexecuted by a processor, cause the processor to: control, based on aselected functional mode of the machine, an engine speed of an engine toa default engine speed; receive, from the power module via the CAN bus,load information corresponding to a load of the sub-system; andautomatically adjust the engine speed based on the sub-system loadinformation and the selected functional mode of the machine.
 16. The atleast one machine-readable medium of claim 15, wherein the power moduleis operably coupled to a scrub motor having a scrub element that ismovable by an actuator, the instructions, when executed by a processor,further cause the processor to: monitor, with the power module, acurrent load on the scrub motor; and communicate to the MMC the currentload; and determine, with the MMC, if the current load on the scrubmotor has transgressed a threshold, and if the threshold has beentransgressed, cause the actuator to be actuated to lift the scrubelement to reduce the load on the motor by decreasing a force on thescrub element.
 17. The at least one machine-readable medium of claim 15,the instructions, when executed by a processor, further cause theprocessor to: receive, from a user input, an indication to power one ormore motors of a first set of that are operably coupled to the powermodule; provide power, with the power module, by pulse width modulation(PWM) to the one or more motors; monitor, with the power module, a loadon the one or more motors; determine, with the power module, if any ofthe one or more motors transgressed a load threshold; and if the loadthreshold has been transgressed by any of the one or more motors,adjust, with the power module, the power provided to the motor thattransgressed the load threshold to reduce an output thereof.
 18. The atleast one machine-readable medium of claim 15, the motive machinefurther having a second power module operably coupled to the MMC by asecond CAN bus, the instructions, when executed by a processor, furthercause the processor to: receive, from a user input, an indication, t, topower one or more motors of a second set of motors that are operablycoupled to the second power module; provide power, with the second powermodule, by pulse width modulation (PWM) to the one or more motors of thesecond set of motors; monitor, with the second power module, a load onone or more motors of the second set of motors; determine, with thesecond power module, if any of the one or more motors of the second setof motors has transgressed a second load threshold; and if the secondload threshold has been transgressed by any of the one or more motors ofthe second set of motors, adjust, with the second power module, thepower provided to the motor that transgressed the second load thresholdto reduce an output thereof.
 19. The at least one machine-readablemedium of claim 15, wherein the instructions when executed by aprocessor, further cause the processor to perform at least two of:sweeping, scrubbing, recovering, idling and transporting, depending on afunctional mode of the machine selected by a user.
 20. A motive machinethat is selectively operable in a plurality of functional modes, themachine comprising: an engine; a main machine controller (MMC) operablycoupled to the engine; a power module operably coupled to the MMC by acontroller area network (CAN) bus; a sub-system operably coupled to thepower module by the CAN bus, wherein the power module monitors a load ofthe sub-system, and using the monitored load of the sub-system, thepower module communicates sub-system load information to the MMC; and asolenoid associated with the power module, wherein the solenoid protectsthe machine in case of a short, and wherein the output from the powermodule is switched on when a high side current switch of the solenoidcloses, and wherein the solenoid closes after power on self-tests of themachine have been successfully completed and no shorts or errors havebeen identified.